package org.csu.mypetstore.service;

import org.csu.mypetstore.domain.Category;
import org.csu.mypetstore.domain.Item;
import org.csu.mypetstore.domain.Product;

import java.util.List;

public interface ItemService {
    //操作大类
    List<Category> findAllCategory();
    //注意：这里使用模糊查询，输入的keyword需要："%"+keyword+"%"  进行拼接
    //如果再mybatis的数据库语句中拼接会有SQL注入问题，故输入串时拼接
    List<Category> findCategoryByName(String keyword);
    void insertCategory(String categoryId, String name,String description);
    void deleteCategoryByCategoryId(String categoryId);
    //更新大类信息，第一个失败了
//    void updateCategoryByCategoryId(String updateCategoryId,String categoryId, String name, String description);
    void updateCategoryByCategoryId(String categoryId, String name, String description);



    //操作小类
    List<Product> findAllProduct();
    //注意：这里使用模糊查询，输入的keyword需要："%"+keyword+"%"  进行拼接
    //如果再mybatis的数据库语句中拼接会有SQL注入问题，故输入串时拼接
    List<Product> findProductByName(String keyword);
    void insertProduct(String productId, String category, String name, String description);
    void deleteProductByProductId(String productId);
    //更新产品信息
    void updateProductByProductId(String productId, String name, String description);



    //操作具体商品
    List<Item> findAllItem();
    //注意：这里使用模糊查询，输入的productId或itemId需要："%"+keyword+"%"  进行拼接
    //如果再mybatis的数据库语句中拼接会有SQL注入问题，故输入串时拼接
    List<Item> findItemByItemId(String itemId);
    List<Item> findItemByProductId(String productId);
    List<Item> findItemByItemIdAndProductId(String itemId,String productId);
    void insertItem(Item item);
    void deleteItemByItemId(String itemId);
    //更新商品信息
    void updateItemByItemId(Item item);

}
